草庐IT

c++ - Visual Studio 和 Boost::Test

全部标签

c++ - 写入视频文件并同时播放

在我有趣的项目中,我从youtube下载视频文件,然后写入本地磁盘上的文件。同时我想玩它。目的是将文件缓存到本地磁盘,以便当我想再次观看视频时,应用程序可以在本地播放,从而节省带宽。我正在使用Python3.3.1、PyQt4/Phonon和LibVLC.到目前为止,我能够做以下事情:给定一个youtubewatchurl,我可以下载视频文件,然后同时使用PyQt4/Phonon和LibVLC独立播放。它不是流媒体。由于LibVLC支持流式传输,我可以通过流式传输给定的url。第二个非常接近我想要做的,但由于它没有将文件保存在磁盘上,下次我无法在本地播放相同的视频。我正在寻找一些关于如

c++ - 如果试图关闭一个已经关闭的套接字 winsock 会发生什么?

这个问题在这里已经有了答案:Callingshutdownandclosesockettwiceonsamesocket(3个答案)关闭9年前。如果我两次调用closesocket(m_socket)会发生什么?第一次调用后,套接字将关闭。第二次调用后是否会发生对程序或应用程序不利的事情。否则它只会返回一个我可以忽略的错误。

c++ - 在Boost Phoenix中获取局部变量的类型

我如何获取作用域BoostPhoenix语句中使用的局部变量的类型?使用Phoenix和Proto,我可以提取Phoenix表达式的多个方面。例如,以下代码公开了元数(3);标签类型(lambda_actor);和Phoenixlambda表达式的child-2标签类型(shift_left):#include#includenamespaceproto=boost::proto;namespacephoenix=boost::phoenix;usingnamespacephoenix::local_names;structFoo{constcharstr[6]="Ok.\n";};i

c++ - 使用 XCODE 4.6.1 的 boost - 正确的build设置是什么?

我下载了boost1.53并解压到Users/user/Desktop/boost_1_53_0我按照以下说明成功地将boost构建为静态库:http://libcinder.org/docs/v0.8.5/_cinder_boost.html我将XCODE的“BuildSettings”“HeaderSearchPaths”更改为/Users/user/Desktop/boost_1_53_0,将“LibrarySearchPaths”更改为Users/user/Desktop/boost_1_53_0/stage/lib然后我构建并得到错误:我遇到的第一个错误是“has_binar

c++ - Boost 图切割上的 3 个类(0、1、4)

当我使用BGLboykov_kolmogorov_max_flow()函数时,我得到了奇怪的结果。我虽然会看到2个类别(0-1或其他任何类别,但只有2个!)但我经常看到三个类别:0、1和4。例如,使用下面的图像来源:左边框中间像素sink:右边框中间像素水平边成本=10*e^(rightPixel/50)垂直边缘代码=0.1。我得到以下结果:4444444444444000000000000000004444444444444400000000000000004444444444444400000000000000004444444444444400000000000000004444

c++ - CLOCK_THREAD_CPUTIME_ID 在 MacOS 上

我有一个要从Linux移植到MacOSX的函数,它使用带有CLOCK_THREAD_CPUTIME_ID的clock_gettime来测量在进程上花费的时间。我在Internet上找到了这段代码,它可以给我相当于CLOCK_REALTIME的代码:#ifdef__MACH__//OSXdoesnothaveclock_gettime,useclock_get_timeclock_serv_tcclock;mach_timespec_tts;host_get_clock_service(mach_host_self(),CALENDAR_CLOCK,&cclock);clock_get_

c++ - 在 GCC 中列出库函数

是否可以在GCC命令行中列出任何库/头文件中可用的所有库函数?是否有类似JAVAP之类的可用于Java的程序?谢谢。 最佳答案 您可以使用objdump列出共享库(或可执行文件)中的符号:$objdump-T/usr/lib/libclang.so0000000000124150gDF.text00000000000000c1Baseclang_reparseTranslationUnit000000000010fe40gDF.text0000000000000021Baseclang_getNullRange00000000001

c++ - Qt 5 和 QProcess 使用信号/槽 readyRead 重定向标准输出

这个问题困扰着我,因为它应该有效,但遗憾的是它没有。我试图实现的是读取某个进程的标准输出并让另一个进程处理它,即打印出来。产生输出的过程如下所示:#include#include#includeintmain(){for(inti=0;i进程是在另一个应用程序中启动的,如下所示:#include...QProcess*process=newQProcess;SomeClass*someClass=newSomeClass(process);connect(process,SIGNAL(readyRead()),someClass,SLOT(onReadyRead()));process

c++ - FFmpeg 库 : Exactly constant segment duration for HLS

我们正在使用FFmpeg库git-ee94362libavformatv55.2.100。我们的目的是使用HLS将两个流(视频和音频)混合到M3U8播放列表中。此外,我们希望每个TS片段文件的持续时间正好为3.0秒(帧速率为25fps)。为了实现它,我们尝试设置几个选项和属性,即:-分段时间-keyint_min-scenechange_threshold-gop_size-force_key_frames。我们的代码如下所示:AVCodecContext*codec_ctx=NULL;AVFormatContext*ofmt_ctx=NULL;intret=0,gopSize=(in

c++ - Boost 序列化给出未定义的类型 'boost::STATIC_ASSERTION_FAILURE'

我正在学习使用boost将我的一些C++类序列化。我在接口(interface)中有一个结构。我使用boostserilaize函数像这样序列化这个结构。接口(interface).hstructX{constLongrate;}templatevoidserialize(Archive&ar,uint32version){ar&this->rate;}BOOST_CLASS_EXPORT(X);现在这个头文件将被我的主类使用。比方说main.cpp,这个主类的标题有主要.h#include"Interface.h"classMain{//somestufftemplatevoidse